﻿using System;

namespace Entities
{
    [Serializable]
    public class tblCustomerGroup
    {
        private string customer_group_name;
        private string customer_group_des;
        private DateTime date_start;
        private DateTime date_end;
        private bool status;

        public tblCustomerGroup() { }

        public tblCustomerGroup(string customer_group_name, string customer_group_des, DateTime date_start, DateTime date_end, bool status)
        {
            this.customer_group_name = customer_group_name;
            this.customer_group_des = customer_group_des;
            this.date_start = date_start;
            this.date_end = date_end;
            this.status = status;
        }

        public string customerGroupName
        {
            get { return this.customer_group_name; }
            set
            {
                if (value == null)
                    throw new Exception("Tên nhóm khách hàng không được để trống!");
                this.customer_group_name = value;
            }
        }

        public string customerGroupDes
        {
            get { return this.customer_group_des; }
            set
            {
                this.customer_group_des = value;
            }
        }

        public DateTime DateStart
        {
            get { return this.date_start; }
            set
            {
                if (value == null)
                    throw new Exception("Ngày bắt đầu không được để trống!");
                this.date_start = value;
            }
        }

        public DateTime DateEnd
        {
            get { return this.date_end; }
            set
            {
                if (value == null)
                    throw new Exception("Ngày kết thúc không được để trống!");
                this.date_end = value;
            }
        }

        public bool Status
        {
            get { return this.status; }
            set
            {
                if (value == null)
                    throw new Exception("Trạng thái tài khoản không được để trống!");
                this.status = value;
            }
        }

        public override string ToString()
        {
	        return this.customer_group_name+"; "+this.customer_group_des+"; "+this.date_start+"; "+this.date_end+"; "+this.status+"; ";
	    }
	    public override bool Equals(Object obj)
	    {
            tblCustomerGroup me = (tblCustomerGroup)obj;
	        bool ret=this.customer_group_name.Equals(me.customer_group_name);
	        return ret;
	    }
	    public override int GetHashCode()
	    {
	        return this.customer_group_name.GetHashCode();
	    }

    }
}
